package com.tangsm.spring.boot.xml.domain;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import com.fasterxml.jackson.databind.annotation.JsonNaming;

/**
 * 微信事件授权信息
 *
 * @author tangsm
 */
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
public class WxEventAuthInfo {
    /**
     * 签名
     */
    private String signature;

    /**
     * 随机性
     */
    private String nonce;

    /**
     * 时间戳
     */
    private String timestamp;

    /**
     * 加密类型
     */
    @JsonProperty(value = "encrypt_type", required = true)
    private String encryptType;

    /**
     * 加密消息
     */
    @JsonProperty(value = "msg_signature", required = true)
    private String msgSignature;


    /**
     * 验证请求，回显字符串
     */
    @JsonProperty(value = "echostr", required = true)
    private String echoStr;

    public String getSignature() {
        return signature;
    }

    public void setSignature(String signature) {
        this.signature = signature;
    }

    public String getNonce() {
        return nonce;
    }

    public void setNonce(String nonce) {
        this.nonce = nonce;
    }

    public String getTimestamp() {
        return timestamp;
    }

    public void setTimestamp(String timestamp) {
        this.timestamp = timestamp;
    }

    public String getEncryptType() {
        return encryptType;
    }

    public void setEncryptType(String encryptType) {
        this.encryptType = encryptType;
    }

    public String getMsgSignature() {
        return msgSignature;
    }

    public void setMsgSignature(String msgSignature) {
        this.msgSignature = msgSignature;
    }

    public String getEchoStr() {
        return echoStr;
    }

    public void setEchoStr(String echoStr) {
        this.echoStr = echoStr;
    }

    @Override
    public String toString() {
        return "WxMpEventAuthInfo{" +
                "signature='" + signature + '\'' +
                ", nonce='" + nonce + '\'' +
                ", timestamp='" + timestamp + '\'' +
                ", encryptType='" + encryptType + '\'' +
                ", msgSignature='" + msgSignature + '\'' +
                ", echoStr='" + echoStr + '\'' +
                '}';
    }
}
